const { defineConfig } = require('@vue/cli-service')
// 导入compression-webpack-plugin
const CompressionWebpackPlugin = require("compression-webpack-plugin")
// 定义压缩文件类型
const productionGzipExtensions = ["js", "css"]
module.exports = defineConfig({
  productionSourceMap: false,//定位的时浏览器控制台输出语句在项目文件的位置自己写代码改成true
  transpileDependencies: true,
  configureWebpack: config => {
    return {
      plugins: [
        new CompressionWebpackPlugin({
          algorithm: "gzip",
          // 匹配文件名
          test: new RegExp("\\.(" + productionGzipExtensions.join("|") + ")$"),
          // 对超过10K的数据进行压缩
          threshold: 10240,
          // 是否删除原文件
          deleteOriginalAssets: false,
          minRatio: 0.8
        })
      ]
    }
  },
  chainWebpack: (config) => {
    config.module
        .rule('vtt')
        .test(/\.vtt$/)
        .use('raw-loader')
        .loader('raw-loader')
        .end();
  },

})
